package ca.shojaei.mini_sat;

import java.util.*;

public class Model1Solver extends Solver{

	
	
	public Model getModel()
	{
		return m;
	}
	
	
	public Model1Solver() {
		//Start to create the states
		
		//set the 
		HashMap<String, Integer> s0 = new HashMap<String,Integer>();
		s0.put("a", 1);
		s0.put("b", -2);
		s0.put("c",3);
		State s_0 = new State(s0,1);
		
		
		HashMap<String, Integer> s1 = new HashMap<String,Integer>();
		s1.put("a", 1);
		s1.put("b", -2);
		s1.put("c",-3);
		State s_1 = new State(s1,-1);
		
		HashMap<String, Integer> s2 = new HashMap<String,Integer>();
		s2.put("a", 1);
		s2.put("b", 2);
		s2.put("c",-3);
		State s_2 = new State(s2,2);
		
		HashMap<String, Integer> s3 = new HashMap<String,Integer>();
		s3.put("a", 1);
		s3.put("b", 2);
		s3.put("c", 3);
		State s_3 = new State(s3,-2);
		

		HashMap<String, Integer> s4 = new HashMap<String,Integer>();
		s4.put("a", -1);
		s4.put("b", -2);
		s4.put("c",3);
		State s_4 = new State(s4,3);
		
		
		//Add links
		s_0.addNextState(s_1);
		s_0.addNextState(s_4);
		
		s_1.addNextState(s_2);
		s_1.addNextState(s_4);
		
		s_2.addNextState(s_2);
		s_2.addNextState(s_3);
		
		s_3.addNextState(s_4);
		
		s_4.addNextState(s_2);
		s_4.addNextState(s_4);
		m = new Model(s_0);
		m.addState(s_0);
		m.addState(s_1);
		m.addState(s_2);
		m.addState(s_3);
		m.addState(s_4);


	}
	 

}
